package com.ferry.transport.netty.provider;

import com.ferry.protocol.StatusCode;
import com.ferry.protocol.payload.RequestPayload;
import com.ferry.transport.api.Directory;
import io.netty.channel.Channel;

public interface ProviderProcessor {

    void handleRequest(Channel channel, RequestPayload request) throws Exception;

    void handleException(Channel channel, RequestPayload request, StatusCode statusCode, Throwable cause);

    void shutdown();

    ServiceWrapper lookup(String uniKey);
}